A network tunnel encapsulates network traffic within a tunneling protocol. While encapsulated, acceleration techniques are unable to distinguish between packets, and therefore are unable to accelerate the traffic. Also, traffic shaping on packets within the tunnel is not possible. In addition, previous attempts to solve this problem have failed and, in particular, are unable to provide header preservation and account. Hence, improvements in the art are needed.